xen/rpi4: implement watchdog-based reset
authorStefano Stabellini <sstabellini@kernel.org>
Fri, 2 Oct 2020 20:47:17 +0000 (13:47 -0700)
committerHans van Kranenburg <hans@knorrie.org>
Tue, 15 Dec 2020 09:23:25 +0000 (10:23 +0100)
commitd345005bb670740ad5370ff8d186fdef3f84d26c
treed3ef3ff52f74f0c3fbf30d568aef974ac84984ab
parentf963f4ecb8cb5094f7c0a218ba154f6b2b16a1e2
xen/rpi4: implement watchdog-based reset

The preferred method to reboot RPi4 is PSCI. If it is not available,
touching the watchdog is required to be able to reboot the board.

The implementation is based on
drivers/watchdog/bcm2835_wdt.c:__bcm2835_restart in Linux v5.9-rc7.

Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Acked-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Tested-by: Roman Shaposhnik <roman@zededa.com>
CC: roman@zededa.com
(cherry picked from commit 25849c8b16f2a5b7fcd0a823e80a5f1b590291f9)
xen/arch/arm/platforms/brcm-raspberry-pi.c